Card activated cash dispensing automated banking machine customization system and method

ABSTRACT

A card activated cash dispensing automated banking machine operates responsive to data included on user cards. A system and method for producing the automated banking machine incorporating a plurality of hardware devices in the automated banking machine responsive to order data associated with a purchase order for the automated banking machine. The hardware devices include a card reader, a cash dispenser, at least one processor, at least one hard drive, and at least one output device. The order data includes at least one hardware part number corresponding to at least one of the devices, at least one software part number corresponding to at least one software component, and at least one customization part number corresponding to at least one customization file. The system and method include installing the software component and the customization file on the at least one hard drive of the machine, through operation of the at least one server responsive to the order data.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.12/004,759 filed Dec. 21, 2007 (now U.S. Pat. No. 8,281,985), whichclaims benefit pursuant to 35 U.S.C. §119 (e) of U.S. ProvisionalApplication No. 60/877,590 filed Dec. 27, 2006. These applications arehereby incorporated herein in their entirety.

TECHNICAL FIELD

The technical field substantially corresponds to devices and methods inUSPTO class 235 under one or more of subclasses 375, 379, 380, and 382.An exemplary embodiment relates to card activated cash dispensingautomated banking machines associated with a banking system.Specifically, exemplary embodiments relate to an apparatus and methodfor producing and configuring customized card activated cash dispensingautomated banking machines.

BACKGROUND

Automated banking machines are well known. A common type of automatedbanking machine used by consumers is an automated teller machine.Automated banking machines enable customers to carry out bankingtransactions. Common banking transactions that may be carried out withautomated banking machines include the dispensing of cash, the receiptof deposits, the transfer of funds between accounts, the payment ofbills, and account balance inquiries. The types of banking transactionsa customer can carry out are determined by capabilities of theparticular banking machine and the programming of the institutionoperating the machine. Other types of automated banking machines mayallow customers to charge against accounts or to transfer funds. Othertypes of automated banking machines may print or dispense items of valuesuch as coupons, tickets, wagering slips, vouchers, checks, food stamps,money orders, scrip, or travelers checks. For purposes of thisdisclosure an automated banking machine or automated transaction machineshall encompass any device which carries out transactions includingtransfers of value.

Automated banking machine platforms often have the ability to performvarious types of transaction functions depending on the types ofsoftware applications that are installed on the machine. Thus oneautomated banking machine may be operatively configured with software toperform only certain banking transactions such as cash dispensing, whileanother automated banking machine with generally similar physicalhardware can perform additional transactions such as bill payment byinstalling additional automated banking machine software (and sometimeshardware) components.

Automated banking machines often are manufactured with a limited set ofpre-installed automated banking machine software components with astandard set of default features. When additional features andcapabilities for an existing automated banking machine are desired, aservice technician (“servicer”) may access a service area or function ofthe automated banking machine which enables the servicer to installadditional software and/or hardware components which provide theadditional desired functionality for the automated banking machine.Examples of systems and procedures for installing and configuringsoftware on an automated banking machine are shown in U.S. Pat. No.6,672,505 of Jan. 6, 2004, U.S. Pat. No. 7,063,253 of Jun. 20, 2006, andU.S. application Ser. No. 11/169,295 filed Jun. 28, 2005, thedisclosures of which are hereby incorporated herein by reference.

Software is often installed from portable media such as CD-ROM and DVDdisks. A problem with this approach is that it is often labor intensiveto manually install and configure new software on automated bankingmachines. A further drawback is that software installed in this manneris often difficult to track for purposes of ensuring that the softwarecomplies with all applicable software licenses. Thus there exists a needfor a new process of installing software on an automated bankingmachine, which process is more efficient and minimizes the opportunityfor unlicensed software to be installed on the automated bankingmachine.

BRIEF SUMMARY

It is an object of at least one embodiment described herein to providean automated banking machine that may be selectively configured.

It is a further object of at least one embodiment to provide a method ofconfiguring an automated banking machine.

It is a further object of at least one embodiment to provide a method ofconfiguring an automated banking machine to include properly licensedsoftware.

Further objects of one or more embodiments will be made apparent in thefollowing Detailed Description and the appended claims.

The foregoing objects may be accomplished in an embodiment of a methodof configuring a card activated automated banking machine such as anautomated banking machine that includes output devices such as a displayscreen, speakers, and a receipt printer. The automated banking machinealso includes input devices such as a card reader, touch screen, keypadand/or function keys. The automated banking machine further includestransaction function devices such as a dispenser mechanism for sheets ofcurrency, a depository mechanism, and other transaction function devicesthat are used by the machine in carrying out banking transactions. Inaddition, the automated banking machine may include communicationdevices, such as networking components which enable the machine tocommunicate with other machines such as a host banking system across awired or wireless network.

The automated banking machine may include at least one computer. Thecomputer is in operative connection with the output devices, the inputdevices, the communication devices, and the transaction function devicesin the machine. The computer is operative to execute a plurality ofsoftware applications stored in a local data store such as a hard drive,flash memory, or other application storage medium. Such softwareapplications may include an operating system. Such software applicationsmay also include automated banking machine software that is operative toprovide the computer with the programming necessary to cause the machineto carry out a plurality of different transaction functions.

As used herein, software applications and their associated componentsinstalled in an automated banking machine are referred to as softwarecomponents. Based on the desired functionality for the machine, one ormore of the software components may be selectively configured on theautomated banking machine. As used herein, the term “configure” withrespect to software encompasses the processes associated with either orboth of configuring existing software already installed on an automatedbanking machine and installing software so as to enable instructions tobe available for use by a computer processor of the automated bankingmachine.

An exemplary embodiment includes a method of manufacturing customizedautomated banking machines. This method may include mounting (at a firstlocation) a plurality of hardware devices to an automated bankingmachine responsive to order data associated with an order for theautomated banking machine. Such an order may correspond to a purchase orlease of one or more automated banking machines by a customer. Thehardware devices may include a card reader, a cash dispenser, at leastone processor, at least one hard drive, at least one input device, andat least one output device. Such devices may be installed in operativeconnection with at least one of a housing, frame, chest, and fascia ofthe machine. The order data may include at least one hardware partnumber corresponding to at least one of the devices. The order data mayalso include at least one software part number corresponding to at leastone software component. In addition, the order data may include at leastone customization part number corresponding to at least onecustomization file provided by the customer and/or created for thecustomer.

Each automated banking machine associated with an order will include atleast one hard drive or other storage device mounted therein that iscapable of storing the at least one software component associated withthe order. In an exemplary embodiment, the method may further includeinstalling, responsive to the order data, the at least one softwarecomponent on the at least one hard drive or other storage device throughoperation of at least one server. In addition, the method may includeinstalling, responsive to the order data, the at least one customizationfile on the at least one hard drive or other storage device, throughoperation of the at least one server.

In an exemplary embodiment, the order data may be stored on the at leastone hard drive or other storage device as well. In such a case,installation of the at least one software component and the at least onecustomization file may be carried out by the at least one serverresponsive to the order data previously stored on the at least one harddrive or other storage device. However, in an alternative embodiment,installation of the at least one software component and the at least onecustomization file may be carried out by the at least one serverresponsive to order data accessed locally or from a remote server.

In an exemplary embodiment, the at least one server may retrieve atleast one customization image responsive to the order data. Thecustomization image may include a plurality of customization files whichare installed on the at least one hard drive or other storage device.Such customization files may include at least one of an image file, avideo file, a sound file, or any other file which is operative toprovide the automated banking machine with customized visual and/oraudible output features desired by the customer. The customization imagemay be retrieved from a server located remotely from the first location.

To produce the customization image, the method may further compriseacquiring, or collecting for a customer associated with the purchaseorder, the plurality of customization files intended for thecustomization image. The method may include storing these files as partof a customization image on the remotely located server. The method mayalso include generating the customization part number and including thecustomization part number in the order data. In addition, the method mayinclude storing data in a data store corresponding to an associationbetween the customization part number and the customization image. Inthis described embodiment, the at least one server may access the datastore using the customization part number to retrieve the customizationimage intended to be stored on the hard drive or other storage device.

These described method steps for installing the at least one softwarecomponent and the at least one customization file on the hard drive orother storage device may be carried out either prior to or after thehard drive or other storage device is mounted in the automated bankingmachine. Also the described method may include installing testingutilities on the hard drive. After the hard drive is mounted in themachine, the testing utilities may be executed in the processor of themachine to test the hardware components mounted in the machine. Forexample the method may include testing the card reader and the cashdispenser mounted in the automated banking machine.

The at least one software component may include a plurality of softwarecomponents installed on the hard drive or other storage device. Also theat least one server may install other software components on the harddrive or other storage device in addition to the at least one softwarecomponent associated with the order data. At least one of these softwarecomponents may include configuration software. Such configurationsoftware may be operative to configure other software componentsinstalled on the hard drive or other storage device. Thus before orafter the hardware components have been tested, the method may includeexecuting the configuration software in the processor of the machine.Such configuration software may configure one or more of the othersoftware components and/or the at least one customization file toprovide the automated banking machine with a software installationcapable of carrying out financial transaction for consumers.

For example a plurality of the software components may correspond tosetup programs, and script files and other components that are capableof being executed in the processor of the machine. The configurationsoftware may sequentially run such software components to complete theconfiguration of software on the automated banking machine.

In an exemplary embodiment, the method may further include transportingthe automated banking machine to a second location remote from the firstlocation. The first location may correspond to a factory where themachine is initially manufactured. The second location may be in adifferent geographical location and may correspond to a secondarystaging facility. At least one further server at the second location mayoperate responsive to the order data to update at least one softwarecomponent and/or the at least one customization file on the at least onehard drive or other storage device. The method may include operating thepreviously described configuration software in the processor of theautomated banking machine to configure the new software componentsand/or customization files installed on the hard drive or other storagedevice.

In an exemplary embodiment, the at least one hard drive or other storagedevice may include at least two partitions. In such an embodiment, theat least one software component and the at least one customization filemay be installed on a first partition, while the test utilities and/ororder data are stored on a second or third partition. In this describedembodiment, the at least one further server at the second location maybe responsive to the order data on the second partition to update the atleast one software component and/or at least one customization file onthe first partition.

In addition, an exemplary embodiment of the method may include testingthe assembled and customized software on the automated banking machine.Testing may include causing the at least one cash dispenser to operateto dispense real or simulated cash, through operation of the at leastone processor responsive to the at least one software componentinstalled on the hard drive or other storage device in the machine.Testing may also include verifying that the machine operates properlyresponsive to the at least one customization file. If the customizationfile corresponds to an image file, testing may include operation of theat least one processor responsive to the at least one software componentand the at least one image file, to cause the output device of themachine to output a visual output representative of the image file.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a perspective view representative of an automated bankingmachine.

FIG. 2 is a schematic view representative of an exemplary embodiment ofan automated banking machine.

FIG. 3 is a schematic view representative of a system for customizingautomated banking machines during the manufacture of the machines.

DETAILED DESCRIPTION

Referring now to the drawings and particularly to FIG. 1, there is showntherein a perspective view of an automated banking machine or anautomated teller machine 10 of one exemplary embodiment. The automatedbanking machine 10 includes at least one output device 34 such as adisplay device 12 that is operative to provide a consumer with a userinterface 18 that includes a plurality of selectable options foroperating the machine. The embodiment may further include other types ofoutput devices such as speakers, a receipt printer 20, or any other typeof device that is capable of outputting visual, audible, or othersensory perceptible information.

The automated banking machine 10 may include input devices 32 such as anencrypting PIN (personal identification number) pad with keypad 16 andfunction keys 14 as well as a card reader 22. The card reader isoperative to read data on bearer records such as user cards. The data onsuch cards may correspond to users and/or financial accounts. Theexemplary embodiment of the machine 10 may further include or use othertypes of input devices, such as a touch screen, microphone, or any otherdevice that is operative to provide the machine with inputsrepresentative of user instructions or information. The machine may alsoinclude one or more biometric input devices such as a fingerprintscanner, an iris scanner, facial recognition device, hand scanner, orany other biometric reading device which may be used to read a biometricinput that can be used to identify a user.

The exemplary embodiment of the automated banking machine 10 may furtherinclude a plurality of transaction function devices which may include,for example, a cash dispenser 24, a depository mechanism 26, cashrecycler mechanism, or any other type of device which is operative toperform transaction functions involving transfers of value.

FIG. 2 is a schematic representation of components which may be includedin the automated banking machine 10. The machine 10 may include at leastone computer 30. The computer 30 may be in operative connection aplurality of hardware devices 46 in the machine, such as the inputdevice(s) 32, the output device(s) 34, and the transaction functiondevice(s) 36. The computer 30 may be in operative connection with othertypes of hardware devices used in the operation of the machine, such ascommunication devices, sensors, lights, motors, actuators or othermechanisms and devices mounted in the machine. In an exemplaryembodiment, the automated banking machine may also include a chest 52that is operative to securely store cash, deposits, and/or other itemsof value.

The described embodiment of the automated banking machine may furtherinclude software components 40 operative in the computer 30. Suchsoftware components may include terminal control software componentsthat are operative to control the operation of the machine by bothconsumers and other authorized users such as service technicians. Forexample, such terminal control software components may includeapplications which enable a consumer to dispense cash, deposit a check,and/or perform other transaction functions with the machine. Inaddition, the terminal control software components may includeapplications which enable a service technician to perform configuration,maintenance, and diagnostic functions with the machine.

The computer 30 of the automated banking machine may include at leastone storage device 41. Such a storage device may correspond to a harddrive or other device that is operative to store software filescomprising computer executable instructions in an automated bankingmachine. For example in an alternative embodiment, the storage devicemay correspond to a flash memory device, an optical storage device, orany other type of device which is capable of storing computer readabledata usable by the computer in the automated banking machine. In anexemplary embodiment, the hard drive or other storage device in theautomated banking machine is used to store the previously describedsoftware components 40, an operating system, and other types of filesand/or data which are described subsequently in more detail. Also, in anexemplary embodiment, the hard drive may be divided into a plurality oflogical or virtual partitions capable of segregating files on the harddrive.

Exemplary embodiments of the automated banking machine 10 are operativeto communicate with a transaction processing server which is referred toherein as an automated banking machine host banking system 42. Such anautomated banking machine host banking system 42 is operative toauthorize the automated banking machine 10 to perform transactionfunctions for users. Such transaction functions may include, forexample, withdrawing cash from an account through operation of the cashdispenser 24, depositing checks or other items through operation of thedepository mechanism 26, performing a balance inquiry for a financialaccount and transferring value between accounts.

Automated banking machines such as automated teller machines may beconfigured differently with different devices and different softwaredepending on the needs of the entity purchasing the automated bankingmachine. In general, the process of producing automated banking machinescustomized to fulfill the needs of a financial institution or otherentity starts with the sale of the automated banking machines. Such asale typically generates an order including order data that specifiesthe desired features for the automated banking machines being purchased.Such features may correspond to hardware devices that are to be includedin the automated banking machines. Such features may also correspond tosoftware components that are to be installed in the automated bankingmachine. Each of the different hardware devices and software componentsrequired for the automated banking machine may be associated withdifferent part numbers which are included in the order for the machine.Examples of software components that may be associated with part numbersinclude an operating system and terminal control software applications.

During the manufacture of the automated banking machine, an exemplaryembodiment includes carrying out a process which includes manuallyand/or automatically installing the required devices and softwarecomponents specified in the order for the machine. FIG. 3 shows aschematic view of an embodiment of a system 100 for manufacturingautomated banking machines. In this described embodiment, a plurality ofautomated banking machines 102 may be built at one or more factorylocations 112. Such factory locations may include an initial factory 104that includes an assembly line and/or a staging area at which automatedbanking machines are built. Such factory locations may also include asecondary staging facility 204 at which assembled automated bankingmachines are further customized or configured.

During the initial assembly of an automated banking machine at a factory104, hardware devices may be individually mounted to an automatedbanking machine frame. Such devices mounted to the automated bankingmachine frame may include a default set of hardware components. Thisdefault set of components comprises a base hardware configuration forthe particular model of automated banking machine being assembled. Suchdevices mounted to the automated banking machine frame may also includethose hardware components that correspond to the hardware part numbersincluded in the order for the machine.

To install software on the automated banking machine, an exemplaryembodiment may include the step of operatively connecting the automatedbanking machine and/or a hard drive of the automated banking machine toat least one local server 106, 206 in the factory 104, staging facility204, or other factory location 112. The at least one local server may beoperative to provide the software required to be installed and/or loadedonto the hard drive or other storage device of the automated bankingmachine. Such software may include a default set of applications commonto a base software configuration for the particular model of automatedbanking machine being assembled. Such software may also include softwarecomponents which correspond to software part numbers included in theorder for the machine. In an exemplary embodiment, the local serverprovides the software components responsive to data associated with theorder for the machine. Data corresponding to the order may be retrievedby the local server from at least one further server 108 remote from thefactory. Such a further server may correspond to an order entry systemcomprising an order database 110 or other server and/or data storeoperative to store data representative of an order and part numbersincluded in the order.

In an exemplary embodiment, when an automated banking machine order isgenerated and stored in the order database 110, the order may beevaluated to determine if the automated banking machine will includecustomized software, customized files, and/or customized configurationdata that deviates from a default set or base configuration of softwarecomponents. Each customization may be assigned a new customizationnumber, referred to herein as a customization part number. In anexemplary embodiment, after the customization part number has beengenerated, the customization part number may be stored in the database110 in association with the order. As a result, the order stored in thedatabase 110 may include hardware part numbers, software part numbers,and one or more customization part numbers.

In addition to generating new customization part numbers and associatingthe part numbers with an order, the described embodiment may alsoinclude associating the new customization part numbers with sets ofcustomization files used to configure the automated banking machine.Such a set of customization files is referred to herein as acustomization image 44. Such an image may correspond to a collection offiles stored as a group. For example, a customization image maycorrespond to a single archive file or a record that includes thecollection of customization files stored therein. Also, a customizationimage may correspond to a set of customization files stored in a commonfolder or otherwise stored in a manner that enables the collection ofcustomization files to be accessed as a set.

In an exemplary embodiment, the customization files included in acustomization image may include graphic files (e.g., bitmaps, JPEGfiles, and other types of image files), video files, sound files, voicefiles, or any other files that may be used to customize the userinterface or other aspects of the operation of the automated bankingmachine. Typically such customization files are provided by the customerand may include customer specific identifying indicia such as a name,logo, or trademark associated with the customer. However, one or more ofthe customization files may be prepared by the manufacturer of theautomated banking machine or other entity for use on automated bankingmachines purchased by the customer.

A customization image may also include one or more configuration filesfor software applications installed on the automated banking machine.Although in some embodiments the customization image may includeexecutable software applications as well, in other embodimentsexecutable software applications may not be included in thecustomization image. Rather, the customization image may be limited toincluding customized files (e.g., graphical files, voice files, andconfiguration files) that are used by executable software applications(e.g., terminal control software applications) in the operation of theautomated banking machine.

In an exemplary embodiment, a customization image 143 comprising aplurality of customization files may be stored on a customization server140. The customization server may include a customization database 142,which includes records associating the customization part numbers fororders with respective customization images. The association between thecustomization image and the customization part number may be created inone or more customization records stored in the customization database.In an exemplary embodiment, the customization image may be stored in afield of a customization record in the customization database. In analternative embodiment, the customization image may be stored on a fileserver which is identifiable by file name (or folder name) frominformation stored in a customization record in the customizationdatabase 142.

In the described embodiment, the customization record which associatesthe customization image to a customization part number may furtherspecify particular software components and/or versions of the softwarecomponents that are to be added (or subtracted) from a default set ofautomated banking machine software components.

A customization record may also include other information associatedwith an order. Such other information stored in the configuration recordmay, for example, identify other aspects of the order such as thelocation or description of customer sites that will have automatedbanking machines with the specified customization. In this describedembodiment, the customization database 142 stores customization recordsfor a plurality of orders for different customers.

In an exemplary embodiment, generating the customization image forstorage on the customization server may include gathering or acquiringcustomization files and configuration from the customer or other entityfor including in the customization image. In addition, embodiments mayfurther include creating and/or programming scripts capable of properlyinstalling the files and/or data included in the customization image onan automated banking machine. Such scripts may be incorporated intobatch files, or installation files, or other software that is capable ofexecuting on the automated banking machine and/or the local server whichoperates to cause the customization files and/or customization data tobe copied to the appropriate locations on the automated banking machine(e.g., directories, folders, registries, databases, and/or otherlocations on the hard drive and/or other storage areas on the automatedbanking machine). Such scripts may be included in the customizationimage.

In addition, documentation regarding the customization image may also beprepared for the customization image and/or customization scripts. Suchcustomization documentation may be useful to assist a technician withusing the customization scripts and/or carrying out disaster recovery ifthe customization image must be reinstalled in the field as part of adisaster recovery process. Such customization documents may be includedin the customization image.

In an exemplary embodiment, the generation and/or acquisition of thecustomization files, customization scripts, and customizationdocumentation may be carried out by a customization team once anautomated banking machine is sold and an order for a new automatedbanking machine is generated. Such a team may further perform testing oneach customization file and associated customization scripts prior tomaking the customization available to the factory responsible formanufacturing the automated banking machine.

In an exemplary embodiment, automated banking machines may be built andconfigured in a number of locations (e.g., factories, assembly lines,staging areas) before being shipped to a customer location. Each ofthese locations may include one or more local servers 106, 206. Suchlocal servers may include an automation server 150, 250. The automationserver may be operative to load software applications and acustomization image onto a hard drive or other storage device of anautomated banking machine. Such an automation server may be operative toaccess the customization database 142 and retrieve data stored in acustomization record for a particular order. If a customization recordand/or a customization part number do not exist for a particular order,the automation server may install a predetermined default set ofsoftware components (also referred to herein as a software stack) on anewly manufactured automated banking machine. Such a default softwarestack may correspond to the latest released version of automated bankingmachine software that is operative for use on the particular model ofautomated banking machine being configured.

If the automation server is able to retrieve a customization part numberfor an order from the customization database, the automation server isoperative to retrieve the corresponding customization image specified bythe customization record. In an exemplary embodiment, such acustomization image may be retrieved from the customization database.However, in alternative embodiments, the customization image may beretrieved from a further location referenced by the customizationrecord, such as a referenced file or directory on a file server or otherserver operative to store customization images.

In addition to retrieving a customization image for an order, theautomation server may also determine from the customization recordwhether specific versions of particular software components are requiredto be installed on the automated banking machine. If specific versionsof software are not required, the automation server is operative toinstall on the automated banking machine the default automated bankingmachine software components (e.g., operating system and terminal controlsoftware applications) and any files included in the customizationimage. If specific versions of software are referenced in thecustomization record, then the automation server is operative to adjustthe default set of software being loaded on the automated bankingmachine to include the particular versions of the software componentsspecified in the customization record for the order. For example, suchparticular versions referenced in a customization record may correspondto an older release of a terminal software application which has beenpreviously certified by the customer.

In an exemplary embodiment, the software components (and differentversions of the software components) available to be installed on anautomated banking machine may be stored on a data store in operativeconnection with a master server 120. Such a master server may correspondto a repository for the software needed for generating a default set orbase configuration of software applications on an automated bankingmachine. The master server 120 may be accessible via a network by eachof the factory locations 112.

Software components required to be installed on automated bankingmachines may be retrieved from the master server 120 by the automationservers at each factory location. However, in other embodiments, thelocal servers 106, 206 may include a factory server 130, 230 which isoperative to store copies of the software components also stored on themaster server 120. When new software components and/or versions ofsoftware components become available on the master server, an embodimentmay include a step of updating the plurality of factory servers toinclude the new software components and/or versions of softwarecomponents. In this described embodiment, the automation server mayretrieve the required software components and/or versions of thesoftware components from the copies of software stored on the factoryserver 130, 230 at the same location.

In the described exemplary embodiment, each factory server may beconfigured to automatically retrieve/receive the latest updates to thesoftware components from the master server on a periodic basis. Thetiming of the updates to the software components on the factory serversmay be synchronized such that all factory servers have the same set ofsoftware components for the same corresponding date. For example, eachfactory server, at midnight local time, could be configured to receivean updated set of software components. As a result, regardless in whichtime zone an automated banking machine is built, for any specific date,all automated banking machines manufactured around the world on thatdate will have access to the same set and versions of softwarecomponents on their respective factory servers. In an alternativeembodiment, all the factory servers may be updated with the latestsoftware components from the master server at about the same time or atdifferent times, depending on the needs of the location that includes afactory server.

The exemplary automation servers 150, 250 may include automationsoftware which causes the automation server to install the customizedimage and the software components on a hard drive or other storagemedium of an automated banking machine. Such automation software may berevised from time to time as the types of software packages andcustomization files change over time.

The master server and/or factory servers may also include the latestversions and/or older versions of automation software. In addition tosoftware components for automated banking machines, the factory serversmay also retrieve/receive copies of the automation software from themaster server. The automation servers may then retrieve/receive thelatest versions (or older versions if needed) of the automation softwarefrom the factory servers.

In an exemplary embodiment, when new updates or revisions to automatedbanking machine software components or automation software are ready forrelease to manufacturing, the updated software may be stored on themaster server. The factory servers in different locations may thenretrieve/receive copies of the updated software components from themaster server to enable automation severs at locations around the worldto have access to the same latest versions of software.

The hard drive of each automated banking machine may be configured tohave a plurality of different partitions. The automation server may beoperative to install a bootable operating system, automated bankingmachine terminal control software components, and customization filesfrom the customization image on a first partition. In an exemplaryembodiment, a second operating system and a plurality of test utilitiesmay be installed on a second partition of the hard drive. The testutilities are operative to test the operation of hardware componentsinstalled in the automated banking machine during the manufacturingprocess. Once the testing of the automated banking machine hardware iscomplete, the boot partition containing the test utilities may bedeleted from the hard drive. At this point the newly manufacturedautomated banking machine is ready to be shipped to a customer site oranother factory or location referred to as a secondary staging facility.

In an exemplary embodiment the data corresponding to an order may bestored on the second partition along with the test utilities or inanother storage location accessible to the automation server. Forexample, in other embodiments, the hard drive of the automated bankingmachine may include a third partition. The third partition may includedata corresponding to the order for the machine. In these describedembodiments, the order data may be stored in an order file. Such anorder file may include the part numbers for the hardware and softwareapplications that must be installed on the automated banking machine.The order file may also include the customization part number.

The automation server 150 at the factory 104 may be operative responsiveto the customization part number stored in the order file on the harddrive to access the customization record corresponding to the automatedbanking machine. The automation server may be responsive to the data inthe customization record and the software part numbers included in theorder file to install the correct versions of software components andthe correct customization files on the first partition of the harddrive. The order file may be removed once testing of the automatedbanking machine hardware is complete. Also, the order file may remain onthe hard drive for later use by another automation server at anotherfactory location 112 to determine the proper software to upgrade and/orreinstall on the automated banking machine.

For example, additional configuration of the automated banking machinemay be carried out at another factory location 112 such as a secondarystaging facility 204. A secondary staging facility 204 may be locatedremotely from the factory 104 at which the automated banking machine isinitially manufactured. Because the amount of time between the initialmanufacture of the automated banking machine and the time the automatedbanking machine is staged at a secondary staging facility may vary fromdays to months, the required software installed on the automated bankingmachine may need to be updated. To update the automated banking machineat the secondary staging facility, the automated banking machine may beconnected to a secondary automation server 250 at the secondary stagingfacility 204. The secondary automation server 250 may be operative toanalyze the automated banking machine and determine whether it meets thecurrent requirements for the customer. Analyzing the automated bankingmachine may include determining whether particular versions of files andother components installed on the automated banking machine correspondto the current data in a customization record for that particularmachine. Analyzing the automated banking machine may also includedetermining whether particular versions of files and other componentsinstalled on the automated banking machine include the latest patchesand service releases.

For example, the secondary automation server 250 may determine that newoperating system patches must be installed or that a newer customizationfile exists and must be loaded on the automated banking machine. In suchcases, the automation server may operate to install the patches,updates, and/or additional files on the automated banking machine. Inaddition, the secondary automation server may determine that the defaultsoftware setup on the automated banking machine does not correspond tothe latest specified version of a default software setup. In such cases,the secondary automation server 250 may reinstall all of the softwarecomponents on the hard drive of the automated banking machine responsiveto the customization data retrieved from the customization database 142for the machine and responsive to data representative of the latestspecified versions of default software available for installation onautomated banking machines.

As described previously, a customization image may include configurationfiles which are loaded onto the automated banking machine by theautomation servers. In some embodiments, the customization records mayinclude data representative of hardware and/or software settings for theautomated banking machine. The automation server may be operativeresponsive to such hardware and software settings in the customizationrecords to further configure the hardware and/or software installed onthe machine. Also, the automation server may be operative to verify partnumbers of hardware devices and/or the model number of the automatedbanking machine included in the order data associated with the machineto determine and configure the software installed on the machine for usewith the particular hardware devices installed on the automated bankingmachine. For example, if the automation server determines that a partnumber corresponding to a depository mechanism is included in the orderfor the machine, the automation server may be operative to configure thesoftware installed to properly use the depository mechanism.

In addition, in alternative embodiments, the customization data storedin the customization database may include site specific data needed byan automated banking machine, which data is to be installed at apredetermined site or in a predetermined network. Examples of siteinformation may include a POLL ID, IP address, terminal name, and/orother information which may be different from automated banking machineto automated banking machine depending on the intended final operatinglocation of the specific automated banking machine being configured. Theautomation server may be responsive to such site specific data retrievedfrom the customization database to configure the corresponding siteinformation stored on the automated banking machine.

In further embodiments, the automation server may be operative toevaluate the order file on the hard drive to determine the type ofhardware devices installed on the automated banking machine. Theautomation server may be responsive to the determined type of hardwaredevices to configure software installed on the machine to operatecorrectly. For example, the automation server may be operative todetermine the type of card reader (motorized or manual swipe) installedon the automated banking machine. Responsive to the determined type ofcard reader, the automation server may be operative to configure voicegeneration software installed on the automated banking machine to beable to output an accurate description of how to use the card reader foruse by a consumer who is visually impaired. For example, the automationsoftware may configure the automated banking machine to verbally outputthe phrase “please insert card” for a motorized card reader installed inthe machine or the phrase “please swipe card” for a manual swipe cardreader installed in the machine.

The automation server may be operative to determine the model number ofthe machine from the order file. The automation server may be responsiveto the model number to configure the automated banking machine toverbally output the correct location of devices on the automated bankingmachine. For example, various models may include the card reader invarious locations relative the display device of the automated bankingmachine. Responsive to the model number, the automation server mayconfigure the automated banking machine to verbally output the sentence,“Please insert card in the card reader located to the right of thedisplay screen,” or “Please insert card in the card reader located belowthe display screen.”

In alternative embodiments, the data representative of the type ofhardware devices and/or model number of the automated banking machinemay be stored in a customization record or in a file included in thecustomization image associated with the order for the machine. Forexample, configuration files may be included in the customization image,which files specify how the automation server should configure softwarecomponents to enable the automated banking machine to output a properdescription of how to use a device and/or the location of the device onthe machine. The configuration files included in the configuration imagemay be generated responsive to the order data stored in a databaserather than order data stored in an order file on a hard drive of theautomated banking machine.

In further embodiments, the automation server may be operative toinstall customer provided executable software applications on anautomated banking machine responsive to data stored in the customizationrecord for an order. Such customer provided software may have softwarelicenses associated therewith that limit how such customer providedsoftware is installed. In such cases, the method for installing suchcustomer provided software may be different from the installation forsoftware provided by the automated banking machine manufacturer or theinstallation of customization files provided by the customer.

For example, the automated banking machine manufacturer may haveauthorization to store multiple copies of a particular softwarecomponent on the master server and on a plurality of factory servers.However, the license associated with the customer provided softwareapplication may not allow copies of the software to be stored on serversof a third party. As a result, the automation server may be operative tocause an alternative method of installing the customer provided softwareto be carried out which does not violate the license for the customerprovided software. Examples of customer provided software may include anoperating system, third party application software, anti-virus software,firewall software, networking software, Virtual Private Network (VPN)software, and any other software that the customer may wish to providefor installing on the automated banking machine.

An example of an alternative method of installing customer providedsoftware may include connecting the automated banking machine to afurther server 300 provided by the customer, which server is operativeto provide and/or install the customer provided software. Such acustomer server 300 may be located at the location at which theautomated banking machine is being configured. Also, such a customerserver may be remote from the location at which the automated bankingmachine is being configured (e.g., may be located at a facility underthe control of the customer). A network connection to a remote customerserver may increase the risk of unauthorized software such as worms andviruses being installed on the automated banking machine. To minimizethis risk, monitoring software may be used which is operative to onlypermit authorized communications and/or authorized software to betransferred between the remote server and the automated banking machine.

For example, the customer provided software transferred between thecustomer server and the automated banking machine may be associated witha hash value. Such a hash value may be stored in association with thecustomization record or elsewhere in a form that is accessible by themonitoring software. The monitoring software may generate a further hashfrom the software received from the customer server. This further hashmay be compared with the previously stored hash corresponding to thesoftware to verify that it is authorized to be installed on theautomated banking machine. In other embodiments, digital signaturesassociated with the customer provided software may be authenticatedprior to permitting the customer provided software to be installed onthe automated banking machine. Of course these approaches are exemplary.

In an exemplary embodiment, the automation server may be operative togenerate a log that includes data representative of the files installedon the automated banking machine. Such a log may include a listing ofcustomization files, software components, operating system components,patches, custom hardware and software configuration settings, and anyother detail of the configuration of the machine carried out by theautomation software.

Once the automated banking machine is installed in its final location ata customer site, it may become necessary to reinstall the software inthe field. To enable the automated banking machine to be reconfiguredcorrectly, in an exemplary embodiment, the customization image may beaccessible through a web page by a technician in the field. Thetechnician may download the customization image corresponding to theautomated banking machine and install it on the automated bankingmachine.

In an exemplary embodiment, auditing software components may be used toensure that the software components, hardware devices and customizationfile associated with an order are consistent with each other and withthe capabilities of the factory or secondary staging area at which themachine will be built and customized. For example, auditing software maybe operative to determine whether or not an order entered in an orderentry server 108 for the purchase of one or more automated bankingmachines specifies software that is not yet available in the master andfactory servers. The auditing software may also be operative to trackthe number of licenses of a particular software package that have beenpreviously purchased or otherwise associated with a customer, in orderto determine if the number of software packages included on orderscomplies with the number of purchased licenses for the software package.Such auditing software may be operative to cause one or more computersto automatically send notification messages to specified contacts in thesales, order entry, and/or manufacturing process of any inconsistenciesthat are found. In an embodiment, the factory may be responsive to anorder that is flagged as having inconsistencies by the auditing softwareto cause the order to be delayed from being assembled.

In an exemplary embodiment, the software, customization image, andconfiguration data for an automated banking machine may be installed onthe hard drive or other storage device prior to the hard drive or otherstorage device being installed in the automated banking machine. Forexample, prior to or during the assembly of an automated banking machineat the factory 104, the intended hard drive for the automated bankingmachine may be connected to a load station which corresponds to or is inoperative connection with the described automation server 150. Theautomation software described previously may operate to initiate theinstallation of the terminal software, operating system (OS) files,customization files, and associated configuration data on a firstpartition of the hard drive responsive to the order data for theparticular automated banking machine. In addition, while at the loadstation, test utilities may also be installed on the second partition ofthe hard drive.

Before disconnecting the hard drive from the customer load station, thehard drive may be imaged (e.g., copied) and the image of the hard drivemay be stored on a server, CD, DVD, or other storage location or articlefor use as a backup. Images of the files on the hard drive stored on aremovable media article such as a CD or DVD disk may be shipped with theautomated banking machine for use in recovering the software after ahard drive failure.

When the automated banking machine is being built, the hard drivepreviously configured at the load station for the automated bankingmachine may be installed in the automated banking machine. The secondpartition associated with the test utilities may be configured to bootfirst. The machine may be booted from this second partition and the testutilities may be configured to automatically (or manually) test thehardware devices installed on the automated banking machine. If all ofthe hardware devices work properly in response to the operation of thetest utilities, the second partition may be deleted and/or reformattedto remove the test utilities and associated bootable OS from the harddrive.

Once the test utilities are removed, the automated banking machine maybe booted off the OS on the first partition that includes the softwarefiles, customization files, and configuration files loaded by theautomation software at the load station. One or more of the many filesinstalled on the hard drive may include configuration software that iscapable of installing, configuring and/or executing one or more of theother software components loaded on the hard drive.

For example, one or more of the software components installed on thehard drive may correspond to a setup program, script file, or archivefile (e.g., setup executable files, batch files, InstallShield™ files,Pearl™ files, and zip files) that need to be executed or expanded tocomplete the configuration of the software on the automated bankingmachine.

The configuration software executed upon booting the OS on the firstpartition of the hard drive may be operative to serially install each ofthe setup/script/archive programs in an order specified by data storedon the hard drive and/or by any other mechanism to ensure software isloaded in a pre-determined order. For example, setup programs needed tobe installed may be stored in a predetermined directory and may beassociated with or named with alphanumeric characters which are used todetermine the order (e.g., alphanumeric by file name) in which they areinstalled by the configuration software. After a software program in thepredetermined directory has completed successfully, the configurationsoftware may be operative to move the installed setup program to anotherfolder on the hard drive or otherwise to archive it so that the softwareis not re-installed upon the next re-boot of the automated bankingmachine. The configuration software then moves on to the next setupprogram, script, or archive file (in alphanumeric order) in thepredetermined directory to execute and/or expand. The configurationsoftware and/or the programs executed by the configuration software maybe operative to re-boot the software multiple times during theinstallation of all of the files in the predetermined directory.

In an exemplary embodiment, the configuration software and/or thesoftware programs installed by the configuration software, may beoperative to execute without user intervention. For example, theconfiguration software may be operative to force unsigned drivers to beinstalled without requiring inputs from a technician. The configurationsoftware may also be operative to automatically log into the OS via anappropriate administrative username and password. If a problem isdetected with the installation, the configuration software is operativeto stop the installation and generate an output informing a technicianof the problem. The configuration software may also be capable ofimporting configuration data on the hard drive and configuring softwareon the automated banking machine responsive to the configuration data.The configuration software may also be operative to remove existinginstalled software components responsive to scripts and/or uninstallprograms present in the predetermined directory.

Once the automated banking machine is configured, it may be connected toa test server in the factory. The automated banking machine may then beoperated to re-boot or otherwise operated to execute terminal controlsoftware to test out one or more transactions with a test host system.The configuration software may remain on the automated banking machinewhen the automated banking machine is moved to a secondary stagingfacility 204 and when the automated banking machine is placed in serviceat a customer's site. Thus when updates are needed as determined by anautomation server at the secondary staging facility or by a remotemanagement utility on the automated banking machine at a customer'ssite, the update components may be placed in the predetermined directorydiscussed previously, and the configuration server is operative toexecute the updated components so as to properly install the updatedsoftware on the hard drive of the automated banking machine.

In an exemplary embodiment, the automated banking machine may include aremote management agent software application that executes in theautomated banking machine while the machine is in service. The remotemanagement agent software may provide for execution, installation,activation, and or deactivation of software that is downloaded on theautomated banking machine in the field. In an exemplary embodiment, theremote management agent software may include or may be operative toexecute the previously described configuration software to configure theautomated banking machine according to data and/or files remotelyacquired by the remote management software from a remote server. Also,the remote management agent may include or be associated with a rebootmanager that is operative to prevent an in-service automated bankingmachine from rebooting responsive to a software update until anappropriate time is available (e.g., when the automated banking machineis not being used by a consumer to carry out financial transactions).

Some embodiments of an automated banking machine may include a computerwith a motherboard that includes a trusted platform module (TPM).Examples of automated banking machines that are configured to use a TPMare shown in U.S. patent application Ser. No. 11/444,957 filed May 31,2006, which is hereby incorporated herein by reference. TPMs may includeone or more digital certificates, private keys, and/or passwords whichenable the TPM to perform cryptographic functions which enhance thesecurity of the automated banking machine. Specifying or acquiring oneor more digital certificates, private keys, and/or passwords for a TPMmay be referred to as taking ownership of the TPM. In an exemplaryembodiment, the method of customizing an automated banking machine asdescribed previously may further include a process of taking ownershipof the TPM.

This process may include installing and executing service softwareincluding TPM configuration software associated with the TPM on a harddrive of the automated banking machine. For example, such TPMconfiguration software may be included on the previously describedsecond partition of the hard drive along with the previously describedtest utilities. Also, the TPM configuration software may be installed onthe second partition after the test utilities have been removed from thesecond partition. In other embodiments, the TPM configuration softwaremay be installed on a further or third partition.

In an exemplary embodiment, the TPM configuration software may include aTPM driver, a Trusted Software Stack (TSS), cryptography serviceprovider software, and/or any other TPM software operative to configurea TPM and acquire certificates associated with RSA keys generated and/orstored using a TPM. In one embodiment, after the TPM configurationsoftware has been used to configure the TPM, the TPM configurationsoftware may be deleted from the second partition or otherwise removedfrom the hard drive of the automated banking machine.

For a TPM 1.2 compliant TPM, the TPM configuration software may beoperative to take ownership of the TPM by establishing a password forthe TPM. During the process of establishing ownership of the TPM, theTPM may produce a number of RSA public and private keys includingStorage Root Keys and Endorsement keys. The TPM configuration softwaremay also be operative to cause the TPM to generate further RSA keys suchas signature keys.

The TPM configuration software may facilitate generating certificaterequest messages (e.g., PKCS#10 certificate request) including, forexample, the signature public keys generated using the TPM. The TPMconfiguration software may also facilitate communicating the certificaterequest messages to a Certificate Authority through a network inoperative connection with the automated banking machine and/or throughcommunication with the factory and/or automation servers. The TPMconfiguration software may also facilitate receiving the requestedcertificates from the Certificate Authority and storing the receivedcertificates on the automated banking machine such as in a certificaterepository on the partition that includes the automated banking machineterminal control software components.

In an exemplary embodiment, the previously described customizationrecord or customization image for an order may further include TPMassociated data which is accessible by the TPM configuration softwarefor use with taking ownership of the TPM. Such TPM associated data mayinclude data to be included in the certificate request messages andgenerated certificates for the TPM such as the common name, organizationname, address information, and/or other information that may be includedin a digital certificate generated for use with a TPM.

The TPM configuration software may also be used to securely forward dataassociated with the configuration of the TPM to a backup database forlater use in recovering the automated banking machine after a hard drivefailure or other event which destroys data stored on the automatedbanking machine usable to interface with the TPM. Such backup data mayinclude certificates, keys, and/or the owner password associated withthe TPM.

In some embodiments in which the automated banking machine is notcapable of being in direct network communication with a CertificateAuthority or a backup database, the TPM configuration software may beoperative to store and/or retrieve certificate request messages,returned certificates, and/or TPM backup data on/from portable storagedevices (e.g., USB flash drives, CDs, DVDs) placed in operativeconnection with the automated banking machine. A technician may thenmove the portable storage device between the automated banking machineand a further computer connected to a certificate authority or backupdatabase through a network to facilitate acquiring certificates and/orstoring/restoring TPM data for the automated banking machine.

In an exemplary embodiment, if an automated banking machine hard driveand/or the data on an automated banking machine hard drive is destroyedor otherwise corrupted, the described TPM configuration software, theautomated banking machine software applications, and the customizationfiles may be reinstalled on the automated banking machine by atechnician servicing the machine. The TPM configuration software maythen be used to reinstall the TPM backup data corresponding to theautomated banking machine to return the automated banking machine to afunctional state. However, in the event the motherboard including theTPM is replaced in the automated banking machine, the above describedsteps for acquiring ownership of the TPM, generating signature keys,acquiring corresponding certificates, and backing up the new TPM datamay be carried out to return the automated banking machine to afunctional state.

Thus the new automated banking machine customization method and systemdescribed herein achieves at least one of the above stated objectives,eliminates difficulties encountered in the use of prior devices andsystems, solves problems and attains the desirable results describedherein.

In the foregoing description certain terms have been used for brevity,clarity and understanding; however, no unnecessary limitations are to beimplied therefrom because such terms are used for descriptive purposesand are intended to be broadly construed. Moreover, the descriptions andillustrations herein are by way of examples and the invention is notlimited to the exact details shown and described.

In the following claims, any feature described as a means for performinga function shall be construed as encompassing any means known to thoseskilled in the art to be capable of performing the recited function, andshall not be limited to the features and structures shown herein or mereequivalents thereof. The description of the embodiment included in theAbstract included herewith shall not be deemed to limit the invention tofeatures described therein.

Having described the features, discoveries and principles of theinvention, the manner in which it is constructed and operated, and theadvantages and useful results attained, the new and useful structures,devices, elements, arrangements, parts, combinations, systems,equipment, operations, methods and relationships are set forth in theappended claims.

We claim:
 1. A method of configuring a card activated cash dispensingautomated banking machine comprising: a) at a first location, includinga plurality of hardware devices in the automated banking machineresponsive at least in part to stored order data associated with anorder corresponding to the automated banking machine, wherein thehardware devices include a card reader operative to read data includedon user cards, a cash dispenser, at least one processor, and at leastone output device, wherein the order data includes at least one hardwarepart number corresponding to at least one of the hardware devices,wherein the order data includes at least one software part numbercorresponding to at least one software component; b) through operationof at least one server responsive at least in part to the order data,installing the at least one software component on a first partition of ahard drive, wherein the hard drive includes at least one additionalpartition; c) through operation of the at least one server, installingat least one test utility on the at least one additional partition ofthe hard drive; d) including the hard drive in the automated bankingmachine in operative connection with the at least one processor, and e)through operation of the at least one processor in the automated bankingmachine, executing the at least one test utility to cause the at leastone hardware device to be tested.
 2. The method according to claim 1,wherein the order data is installed on the hard drive, wherein in (b)the at least one server is operative responsive at least in part to theorder data installed on the hard drive.
 3. The method according to claim1, wherein in (b) the at least one server is operative responsive atleast in part to order data included in a remote server.
 4. The methodaccording to claim 1, wherein the order data includes at least onecustomization part number corresponding to at least one customizationfile provided by a customer associated with the order furthercomprising: f) prior to (d), retrieving through operation of the atleast one server, at least one customization image responsive at leastin part to the order data, wherein the customization image includes aplurality of customization files; g) through operation of the at leastone server, installing the plurality of customization files on the firstpartition of the hard drive.
 5. The method according to claim 4, whereinthe plurality of customization files includes at least one of an imagefile, a video file, a sound file, or any combination thereof.
 6. Themethod according to claim 4, wherein (f) includes retrieving thecustomization image from a server located remotely from the firstlocation.
 7. The method according to claim 6, further comprising: h)prior to (a), acquiring from a customer associated with the order theplurality of customization files; i) storing the customization files inthe customization image; j) generating the customization part number; k)including the customization part number in the order data; and l)storing in a data store, an association between the customization partnumber and the customization image; wherein (f) includes accessing thedata store using the customization part number to retrieve thecustomization image.
 8. The method according to claim 1, furthercomprising: f) transporting the automated banking machine to a secondlocation remote from the first location; and g) through operation of atleast one further server responsive at least in part to the order data,updating at least one software component on the first partition of thehard drive.
 9. The method according to claim 8, wherein in (f) the firstlocation and the second location are located in geographically distantlocations.
 10. The method according to claim 9, wherein the order dataincludes at least one customization part number corresponding to atleast one customization file provided by a customer associated with theorder, further comprising: h) prior to (f) through operation of the atleast one server responsive at least in part to the order data,installing the at least one customization file on the first partition ofthe hard drive; and i) through operation of the at least one furtherserver responsive at least in part to the order data, updating the atleast one customization file on the first partition of the hard drive.11. The method according to claim 9, further comprising: j) throughoperation of the at least one server, installing the order data on theat least one additional partition of the hard drive; wherein (i) iscarried out responsive at least in part to the order data installed onthe at least one additional partition of the hard drive.
 12. The methodaccording to claim 1, wherein (e) includes through operation of the atleast one processor in the automated banking machine responsive at leastin part to the at least one test utility, causing the cash dispenser tooperate.
 13. The method according to claim 12, further comprising: f)subsequent to (e), removing the at least one test utility from the harddrive.
 14. The method according to claim 13, wherein (e) includes the atleast one processor booting from the at least one additional partitionof the hard drive that includes the test utility, further comprising: g)subsequent to (f), configuring the at least one processor tosubsequently boot from the first partition of the at least one harddrive.
 15. The method according to claim 13, wherein the at least onesoftware component includes at least one configuration softwarecomponent, further comprising: subsequent to (f), through operation ofthe at least one processor in the automated banking machine, executingthe configuration software component.
 16. A method of configuring a cardactivated cash dispensing automated banking machine comprising: a) at afirst location that includes the automated banking machine, accessingthorough operation of at least one server, stored order data associatedwith an order corresponding to the automated banking machine, whereinthe order data includes at least one hardware part number correspondingto at least one of a plurality of hardware devices capable of beinginstalled in the automated banking machine, which plurality of hardwaredevices include a card reader operative to read data included on usercards, a cash dispenser, at least one processor, and at least one outputdevice, wherein the order data includes at least one software partnumber corresponding to at least one software component; b) at the firstlocation through operation of at least one server responsive at least inpart to the order data, installing the at least one software componenton a first partition of a hard drive, wherein the hard drive includes atleast one additional partition; c) at the first location throughoperation of the at least one server, installing at least one testutility on the at least one additional partition of the hard drive; d)including the hard drive in the automated banking machine in operativeconnection with the at least one processor; and e) through operation ofthe at least one processor in the automated banking machine, executingthe at least one test utility to cause the at least one hardware deviceto be tested.
 17. The method according to claim 16, further comprising:f) prior to (e) at the first location, including the at least onehardware device in the automated banking machine that corresponds to theat least one hardware part number included in the order data.
 18. Themethod according to claim 16, further comprising: f) at the firstlocation, installing the order data on the at least one additionalpartition of the hard drive; g) transporting the automated bankingmachine to a second location remote from the first location; and h) atthe second location, through operation of at least one further serverresponsive at least in part to the order data installed on the at leastone additional partition of the hard drive, updating at least onesoftware component on the at least one additional partition of the harddrive.
 19. The method according to claim 16, wherein the automatedbanking machine includes the plurality of hardware devices, wherein theorder data includes at least one customization part number correspondingto at least one customization file provided by a customer associatedwith the order, wherein the customization file includes an image file,further comprising: f) prior to (d) at the first location, throughoperation of the at least one server responsive at least in part to theorder data, installing the at least one customization file on the firstpartition of the hard drive; and g) through operation of the at leastone processor in the automated banking machine responsive at least inpart to the at least one software component and the at least one imagefile, causing the output device to output a visual output representativeof the image file.
 20. The method according to claim 16, wherein (e)includes the at least one processor booting from the at least oneadditional partition of the hard drive that includes the test utility,further comprising: f) subsequent to (e), removing the at least one testutility from the hard drive; g) subsequent to (f), configuring the atleast one processor to subsequently boot from the first partition of theat least one hard drive.
 21. A card activated cash dispensing automatedbanking machine produced by a method comprising: a) at a first location,including a plurality of hardware devices in the automated bankingmachine responsive at least in part to stored order data associated withan order corresponding to the automated banking machine, wherein thehardware devices include a card reader operative to read data includedon user cards, a cash dispenser, at least one processor, and at leastone output device, wherein the order data includes at least one hardwarepart number corresponding to at least one of the hardware devices,wherein the order data includes at least one software part numbercorresponding to at least one software component; b) through operationof the at least one server, installing the order data on a hard drive,wherein the hard drive includes a first partition and at least oneadditional partition, wherein the order data is installed on the atleast one additional partition; c) through operation of at least oneserver responsive at least in part to the order data, installing the atleast one software component on the first partition of a hard drive; d)through operation of the at least one server, installing at least onetest utility on the at least one additional partition of the hard drive;e) including the hard drive in the automated banking machine inoperative connection with the at least one processor; f) throughoperation of the at least one processor in the automated bankingmachine, executing the at least one test utility to cause the at leastone hardware device to be tested; and g) through operation of the atleast one processor in the automated banking machine, removing the atleast one test utility from the hard drive.